package concurrency.basicthreading.demo;
/**
 * 我们可以通过isDaemon来判断一个线程是否为后台线程。如果是一个后台线程，那么由该线程创建出来的任何线程都将被自动设置为后台线程。
 * 
 * 下面的例子当run执行时，将派生出10个新线程。这10个线程是非后台线程还是后台线程取决于执行给run方法的线程。在Demo09Daemons中我们将
 * 执行该任务的线程设置为后台线程d.setDaemon(true);。那么着10个线程将是后台线程。
 */
public class Demo09Daemon implements Runnable{
	private Thread[] t = new Thread[10];
	
	public static void main(String[] args) {
		
	}

	@Override
	public void run() {
		for (int i = 0; i < t.length; i++) {
			t[i] = new Thread(new Demo09DaemonSpawn());
			t[i].start();
			System.out.println("DaemonSpan " + i + " started");
		}
		
		for (int i = 0; i < t.length; i++) {
			System.out.println("t[" + i + "].isDaemon() = " + t[i].isDaemon() + ". ");
		}
		
		while(true) {
			Thread.yield();
		}
	}
}
